package com.jiangyao.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jiangyao.model.dto.backend.CoursewareDTO;
import com.jiangyao.model.dto.backend.CoursewareListPageDTO;
import com.jiangyao.model.entity.Courseware;
import com.jiangyao.model.vo.backend.CoursewareDetailVO;
import com.jiangyao.model.vo.backend.CoursewareListVO;

/**
 * <p>
 * 课件信息表 服务类
 * </p>
 *
 * @author yangyongchuan
 * @since 2020-08-11
 */
public interface CoursewareService extends IService<Courseware> {

	/**
	 * 获取课件列表
	 *
	 * @param listPageDTO 列表DTO
	 * @return 结果
	 */
	Page<CoursewareListVO> getListPage(CoursewareListPageDTO listPageDTO);

	/**
	 * 增加课件
	 *
	 * @param coursewareDTO 增加DTO
	 */
	void add(CoursewareDTO coursewareDTO);

	/**
	 * 编辑课件
	 *
	 * @param coursewareDTO 编辑DTO
	 */
	void edit(CoursewareDTO coursewareDTO);

	/**
	 * 编辑课件状态（启用、禁用）
	 *
	 * @param coursewareDTO 编辑DTO
	 */
	void editStatus(CoursewareDTO coursewareDTO);

	/**
	 * 获取课件详情
	 *
	 * @param coursewareDTO 请求DTO
	 * @return 结果
	 */
	CoursewareDetailVO getDetail(CoursewareDTO coursewareDTO);

}
